1、计算角度前首先要把经纬度坐标转换成地图容器坐标
// 计算两点间的角度
function calcAngle(start, end) {
var p_start = map.lngLatToContainer(start),
p_end = map.lngLatToContainer(end);
var diff_x = p_end.x - p_start.x,
diff_y = p_end.y - p_start.y;
return 360*Math.atan2(diff_y, diff_x)/(2*Math.PI)+90;
}
调用
calcAngle([88.926756, 42.37309], [119.687036, 29.6309]);
方法是固定的,可以延伸到其他地图上用。。。
2、根据百分比计算当前坐标
var lastCoord = [2, 10],
dstCoord = [10, 30],
percent = 0.5,
curCoord;
if(percent == 0.5) {
curCoord = [(10+2)/2, (30+10)/2];
} else {
curCoord = [(10-2)*percent+2, (30-10)*percent+10];
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。